<script>
    // 1. 声明两个变量和一个函数
    var username = '张三';
    var age = 18;

    function say(provice, city) {
        console.log('this=', this);
        console.log(`我来自${provice}${city}`);
        console.log(`我叫${this.username},今年${this.age}岁`);
    }

    // 2. 创建一个对象
    var person = {
        username: '老胡',
        age: 100
    };

    window.say('广东', '深圳');

    // 3. 使用call改变this的指向:第一个参数是this将要指向的对象, 第二参数,第三个参数.....,这些参数函数调用需要传入的参数
    say.call(person, '广西', '贵港');

    // 4. 使用apply改变this的指向:第一个参数是this将要指向的对象, 第二参数是个数组,数组放入的是函数需要的参数
    say.apply(person, ['陕西', '西安']);
</script>